home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet multimedia / Muzyka / Edytory sampli (probek dzwieku) / ZynAddSubFX_2.2.0 / Setup_ZynAddSubFX-2.2.0.exe / source code / Makefile < prev    next >
Makefile  |  2005-03-13  |  2KB  |  118 lines

  1. include Makefile.inc
  2.  
  3. ifneq ($(MAKECMDGOALS),debug)
  4.   CXXFLAGS= -O6 -Wall 
  5. else 
  6.   CXXFLAGS= -O0 -Wall -Wpointer-arith -Wstrict-prototypes
  7. endif
  8.  
  9. CXXFLAGS += -DOS_$(OS_PORT) -D$(MIDIIN)MIDIIN -DFFTW_VERSION_$(FFTW_VERSION) -DASM_F2I_$(ASM_F2I) `fltk-config --cflags` 
  10.  
  11. ifeq ($(AUDIOOUT),OSS_AND_JACK)
  12.     CXXFLAGS += -DOSSAUDIOOUT -DJACKAUDIOOUT 
  13. else
  14.     CXXFLAGS += -D$(AUDIOOUT)AUDIOOUT 
  15. endif
  16.  
  17. export CXXFLAGS
  18. LIBS= -lm  `fltk-config --ldflags` -lmxml -lz
  19.  
  20. ifeq ($(FFTW_VERSION),2)
  21. LIBS += -lrfftw -lfftw
  22. else
  23. LIBS += -lfftw3
  24. endif
  25.  
  26. ifeq ($(OS_PORT),LINUX) 
  27. LIBS+= -lpthread
  28. else
  29. #dynamic linking
  30. #LIBS+= -lpthreadGC
  31. #static linking
  32. LIBS+= /usr/lib/libpthreadGC1.a
  33. endif
  34.  
  35. ifeq ($(MIDIIN),ALSA) 
  36. LIBS+= -lasound
  37. endif
  38.  
  39. ifeq ($(AUDIOOUT),PA) 
  40. LIBS+= -lportaudio
  41. endif
  42.  
  43. ifeq ($(OS_PORT),WINDOWS) 
  44. LIBS+= -lwinmm
  45. endif
  46.  
  47.  
  48. ifeq ($(AUDIOOUT),OSS_AND_JACK) 
  49. CXXFLAGS += `pkg-config --cflags jack`
  50. LIBS+= `pkg-config --libs jack`
  51. endif
  52.  
  53. ifeq ($(AUDIOOUT),JACK) 
  54. CXXFLAGS += `pkg-config --cflags jack`
  55. LIBS+= `pkg-config --libs jack`
  56. endif
  57.  
  58. ifeq ($(AUDIOOUT),JACK_RT) 
  59. CXXFLAGS += `pkg-config --cflags jack`
  60. LIBS+= `pkg-config --libs jack`
  61. endif
  62.  
  63. objects=main.o
  64. SUBDIRS=DSP Effects Input Misc Output Params Synth Seq
  65.  
  66. .PHONY: subdirs $(SUBDIRS)
  67.  
  68. all:
  69. #    yes " " | head
  70.     $(MAKE) -C UI $@
  71. #    @sh -c "cd UI ; $(CXX) -MM -MG -w *.cc >> ../Make.deps ; cd .."
  72.     @for name in $(SUBDIRS); do sh -c "cd $$name ; $(CXX) -MM -MG -w *.C >> ../Make.deps ; cd .."; done
  73.     $(MAKE) subdirs
  74.     $(MAKE) objs
  75.     rm -f zynaddsubfx zynaddsubfx.exe
  76.     rm -f Make.deps 
  77.  
  78.  
  79. ifeq ($(AUDIOOUT),DSSI) 
  80.     gcc -shared  -o zynaddsubfx.so */*.o *.o $(LIBS) 
  81. else
  82. ifeq ($(AUDIOOUT),VST) 
  83.     gcc -shared -o zynaddsubfx_vst.dll */*.o *.o ../../vstsdk2/source/common/AudioEffect.cpp ../../vstsdk2/source/common/audioeffectx.cpp  $(LIBS) zynaddsubfx_gcc.def
  84. else
  85.  
  86.  
  87. ifeq ($(OS_PORT),LINUX) 
  88.     $(CXX) -o zynaddsubfx */*.o *.o $(LIBS)
  89. else
  90.     $(CXX) -o zynaddsubfx.exe */*.o *.o $(LIBS)
  91. endif 
  92. endif
  93. endif
  94.  
  95. subdirs: $(SUBDIRS)
  96.  
  97. $(SUBDIRS):
  98.     $(MAKE) -C $@
  99.  
  100.  
  101. objs:$(objects)
  102.  
  103. debug: all
  104.  
  105. main.o:Misc/Master.h Misc/Util.h Output/OSSaudiooutput.h\
  106.        Input/OSSMidiIn.h Input/ALSAMidiIn.h \
  107.        UI/MasterUI.h
  108.  
  109.  
  110. .PHONY : clean
  111. clean: 
  112.     rm -f $(objects) zynaddsubfx zynaddsubfx_vst.dll zynaddsubfx.exe zynaddsubfx.so
  113.     @for name in $(SUBDIRS); do sh -c "make -C $$name $@"; done
  114.     rm -f Make.deps
  115.     rm -f */*.o *.o
  116.     $(MAKE) -C UI $@
  117.  
  118.